package com.sunyur.tailor.channel.service.inner.protocol.model;

import lombok.Data;
import java.io.Serializable;
import java.math.BigDecimal;

/**
 * @ClassName ListProtocolModel
 * @Description 获取协议头信息返回实体
 * @Author hao.tian
 * @Date 2021/5/12
 * @Version v1.0
 */
@Data
public class ListProtocolModel implements Serializable {


    private static final long serialVersionUID = -3318353295041274090L;
    /**
     * 协议编号
     */
    private String protocolCode;

    /**
     * 协议id(会随着版本升级会变化)
     */
    private Long protocolId;

    /**
     * 合同编码
     */
    private String contractCode;

    /**
     * 协议名称
     */
    private Long protocolName;

    /**
     * 合同名称
     */
    private String contractName;

    /**
     * 协议类型(0供货协议、1框架协议、2增补协议、3一次性协议)
     */
    private Integer protocolType;

    /**
     * 账期类型：1收到货物后，2收到发票后， 3月结
     */
    private Integer accountPeriodType;

    /**
     * 协议创建方（0采购商、1供应商） 默认为采购商
     */
    private Integer protocolCreator;

    /**
     * 创建人编码
     */
    private String creatorCode;

    /**
     * 创建人姓名
     */
    private String creatorName;

    /**
     * 采购员
     */
    private String buyer;

    /**
     * 采购员编码
     */
    private String buyerCode;

    /**
     * 采购组织名称
     */
    private String orgName;

    /**
     * 采购组织code
     */
    private String orgCode;

    /**
     * 账期（天数）10/30/60/90 帐期天数
     */
    private Integer accountPeriod;

    /**
     * 协议总额（整个协议的总额，即合同帽）
     */
    private BigDecimal protocolTotal;

    /**
     * 采购商公司主体（法人主体名称）
     */
    private String companySubject;

    /**
     * 定价方式（1固定价格协议,2浮动折扣价格协议,3按商品品类折扣）
     */
    private Integer pricingMethod;

    /**
     * 供应商编码
     */
    private String supplierCode;

    /**
     * 供应商公司名称
     */
    private String supplierName;


    /**
     * 交易方式(1货到付款、2预存款、3担保交易)
     */
    private Integer tradeMethod;


    /**
     * 付款方式(如：1银行转账、2支票、3电汇 、4现金、5银行承兑3个月、6银行承兑6个月、7商业承兑3个月、8商业承兑6个月)
     */
    private Integer paymentMethod;


    /**
     * 备注，小于500字；
     */
    private String remark;

    /**
     * 协议有效期开始时间
     */
    private Long protocolValidityBegin;


    /**
     * 协议有效期结束时间
     */
    private Long protocolValidityEnd;


    /**
     * 协议状态（0草稿、2待审批、4审批未通过、6未执行、8执行中、9已中止、10已失效）
     */
    private Integer protocolStatus;


    /**
     * 运费类型（0已含运费类型,1未达订单额有运费)
     */
    private Integer freightType;


    /**
     * 结算周期（如：1周结、2月结、3季度结、4合同结算）
     */
    private Integer settlementCycle;


    /**
     * 发票类型(1-增值税专票,2-增值税普票)
     */
    private String invoiceType;


    /**
     * 流水号（不会随版本升级而变化）
     */
    private String protocolSerialNumber;

    /**
     * 版本号
     */
    private Double protocolVersion;

    /**
     * 协议终止原因
     */
    private String terminalReason;

    /**
     * 附件url
     */
    private String protocolTextUrl;

    /**
     * 业务模式类型(0付费商品协议、1调旧闲置商品协议、2领用商品协议)
     */
    private Integer businessType;

    /**
     * 采购组内部编码
     */
    private String purchaseTeamCode;

    /**
     * 供应商编码
     */
    private String supplierLegalEntityCode;
}
